import java.util.Map;
import java.util.Set;
import java.util.TreeMap;
import java.util.TreeSet;

public class Main {
    public static void main2(String[] args) {
        Set<String> set = new TreeSet<>();
        set.add("aaaa");
        set.add("bbbb");
        set.add("cccc");
        set.add("eeee");
        System.out.println(set);
        for (String x: set) {
            System.out.println(x);
        }
    }

    public static void main1(String[] args) {
        Map<String,Integer> map = new TreeMap<>();
        map.put("abc",3);
        map.put("put",2);
        map.put("hello",1);

        Integer val = map.get("abc");
        System.out.println(val);
        int val2 = map.get("abc");
//        不是整型，会出现空指针异常
//      这句会输出100，因为没有找到key：abcd
        System.out.println(map.getOrDefault("abcd",100));
//      将map的所有key存放在数据类型为String的Set中
        Set<String> set = map.keySet();
        System.out.println(set);

        Map<String,Integer> map1 = new TreeMap<>();
        map1.put("qaaa",1);
        map1.put("yyyyy",2);
        map1.put("aaaa",3);
//        单独获取key/单独获取value
        Set<String> set1 = map1.keySet();
        System.out.println("set1 = "+set1);
//        获取map中的key和value
//           节点的地址
        Set<Map.Entry<String,Integer>> set2 = map1.entrySet();
//        如何获取set中的值
        for (Map.Entry<String,Integer> entry: set2) {
            System.out.println("key:"+entry.getKey()+" value:"+entry.getValue());
        }
    }
}